package org.leslie.validation;

import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;
import org.leslie.anno.State;

// ConstraintValidator的 第一个 泛型是给哪个注解提供校验规则
// ConstraintValidator的 第二个 泛型是给校验什么类型的数据
public class StateValidation implements ConstraintValidator<State, String> {

    /**
     * @param value:   将来要校验的数据
     * @param context:
     * @return false-不通过
     */
    @Override
    public boolean isValid(String value, ConstraintValidatorContext context) {
        if (value == null) {
            return false;
        }

        return value.equals("已发布") || value.equals("草稿");
    }
}
